---
title: Commandes CLI
i18nReady: true
---
import Since from '~/components/Since.astro';
import PackageManagerTabs from '~/components/tabs/PackageManagerTabs.astro'
import ReadMore from '~/components/ReadMore.astro'

Vous pouvez utiliser l'interface en ligne de commande (CLI) fournie par Astro pour développer, construire et prévisualiser votre projet à partir d'une fenêtre de terminal.

### Commandes `astro`

Utilisez la CLI en exécutant l'une des **commandes** documentées sur cette page avec votre gestionnaire de paquets préféré, suivie éventuellement de toutes les **options**. Les options personnalisent le comportement d'une commande.

L'une des commandes que vous utiliserez le plus souvent est `astro dev`. Cette commande démarre le serveur de développement et vous donne un aperçu votre site mis à jour en direct dans un navigateur pendant que vous travaillez :

<PackageManagerTabs>
  <Fragment slot="npm">
  ```shell
  # démarre le serveur de développement
  npx astro dev
  ```
  </Fragment>
  <Fragment slot="pnpm">
  ```shell
  # démarre le serveur de développement
  pnpm astro dev
  ```
  </Fragment>
  <Fragment slot="yarn">
  ```shell
  # démarre le serveur de développement
  yarn astro dev
  ```
  </Fragment>
</PackageManagerTabs>

Vous pouvez saisir `astro --help` dans votre terminal pour afficher une liste de toutes les commandes disponibles :

<PackageManagerTabs>
  <Fragment slot="npm">
  ```shell
  npx astro --help
  ```
  </Fragment>
  <Fragment slot="pnpm">
  ```shell
  pnpm astro --help
  ```
  </Fragment>
  <Fragment slot="yarn">
  ```shell
  yarn astro --help
  ```
  </Fragment>
</PackageManagerTabs>

Le message suivant s'affichera dans votre terminal :

```bash
astro [commande] [...options]

Commands
              add  Add an integration.
            build  Build your project and write it to disk.
            check  Check your project for errors.
       create-key  Create a cryptography key
              dev  Start the development server.
             docs  Open documentation in your web browser.
             info  List info about your current Astro setup.
          preview  Preview your build locally.
             sync  Generate TypeScript types for all Astro modules.
      preferences  Configure user preferences.
        telemetry  Configure telemetry settings.

Global Flags
  --config <path>  Specify your config file.
    --root <path>  Specify your project root folder.
     --site <url>  Specify your project site.
--base <pathname>  Specify your project base.
        --verbose  Enable verbose logging.
         --silent  Disable all logging.
        --version  Show the version number and exit.
           --help  Show this help message.
```


Vous pouvez ajouter l'option `--help` après n'importe quelle commande pour obtenir une liste de toutes les options pour cette commande.

<PackageManagerTabs>
  <Fragment slot="npm">
  ```shell
  # obtenir une liste de toutes les options pour la commande `dev`
  npm run dev -- --help
  ```
  </Fragment>
  <Fragment slot="pnpm">
  ```shell
  # obtenir une liste de toutes les options pour la commande `dev`
  pnpm dev --help
  ```
  </Fragment>
  <Fragment slot="yarn">
  ```shell
  # obtenir une liste de toutes les options pour la commande `dev`
  yarn dev --help
  ```
  </Fragment>
</PackageManagerTabs>

Le message suivant s'affichera dans votre terminal :

```bash
astro dev [...flags]

Flags
                 --port  Specify which port to run on. Defaults to 4321.
                 --host  Listen on all addresses, including LAN and public addresses.
--host <custom-address>  Expose on a network IP address at <custom-address>
                 --open  Automatically open the app in the browser on server start
                --force  Clear the content layer cache, forcing a full rebuild.
            --help (-h)  See all available flags.
```

:::note
Le `--` supplémentaire avant chaque option est nécessaire pour que `npm` transmette vos options à la commande `astro`.
:::

### Scripts `package.json`

Vous pouvez également utiliser des scripts dans `package.json` pour des versions plus courtes de ces commandes. L'utilisation d'un script vous permet d'utiliser les mêmes commandes avec lesquelles vous pourriez être familier dans d'autres projets, telles que `npm run build`.

Pour les commandes `astro` les plus courantes (`astro dev`, `astro build` et `astro preview`), les scripts suivants sont ajoutés automatiquement lorsque vous créez un projet en utilisant [l'assistant d'installation `create astro`](/fr/install-and-setup/).

Lorsque vous suivez les instructions pour [installer Astro manuellement](/fr/install-and-setup/#configuration-manuelle), vous êtes invité à ajouter vous-même ces scripts. Vous pouvez également ajouter manuellement d'autres scripts à cette liste pour toute commande que vous utilisez fréquemment. 

```json title="package.json"
{
  "scripts": {
    "dev": "astro dev",
    "build": "astro build",
    "preview": "astro preview"
  }
}
```

Vous utiliserez souvent ces commandes `astro`, ou les scripts qui les exécutent, sans aucune option. Ajoutez des options à la commande lorsque vous souhaitez personnaliser le comportement de la commande. Par exemple, vous souhaiterez peut-être démarrer le serveur de développement sur un port différent ou compiler votre site avec des journaux détaillés pour le débogage.

<PackageManagerTabs>
  <Fragment slot="npm">
  ```shell
  # exécute le serveur de développement sur le port 8080 en utilisant le script `dev` dans `package.json`
  npm run dev -- --port 8080
    
  # compile votre site avec des journaux détaillés en utilisant le script `build` dans `package.json`
  npm run build -- --verbose
  ```
  </Fragment>
  <Fragment slot="pnpm">
  ```shell
  # exécute le serveur de développement sur le port 8080 en utilisant le script `dev` dans `package.json`
  pnpm dev --port 8080
    
  # compile votre site avec des journaux détaillés en utilisant le script `build` dans `package.json`
  pnpm build --verbose
  ```
  </Fragment>
  <Fragment slot="yarn">
  ```shell
  # exécute le serveur de développement sur le port 8080 en utilisant le script `dev` dans `package.json`
  yarn dev --port 8080
    
  # compile votre site avec des journaux détaillés en utilisant le script `build` dans `package.json`
  yarn build --verbose
  ```
  </Fragment>
</PackageManagerTabs>

## `astro dev`

Exécute le serveur de développement d'Astro. Il s'agit d'un serveur HTTP local qui ne regroupe pas les ressources. Il utilise le remplacement de modules à chaud (ou « Hot Module Replacement (HMR) » en anglais) pour mettre à jour votre navigateur lorsque vous enregistrez des modifications dans votre éditeur.

Les raccourcis clavier suivants peuvent être utilisés dans le terminal où le serveur de développement d'Astro est exécuté :

- `s + Entrée` pour synchroniser les données de la couche de contenu (contenu et types).
- `o + Entrée` pour ouvrir votre site Astro dans le navigateur.
- `q + Entrée` pour quitter le serveur de développement.

## `astro build`

Compile votre site pour le déploiement. Par défaut, cela générera des fichiers statiques et les placera dans un répertoire `dist/`. Si des routes sont [rendues à la demande](/fr/guides/on-demand-rendering/), cela générera les fichiers serveur nécessaires pour servir votre site.

<h3>Options</h3>

La commande accepte les [options courantes](#options-courantes) et les options supplémentaires suivantes :

#### `--devOutput`

<p><Since v="5.0.0" /></p>

Produit une version basée sur le développement similaire au code transformé avec `astro dev`. Cela peut être utile pour tester les problèmes spécifiques à la compilation avec des informations de débogage supplémentaires incluses.

## `astro preview`

Démarre un serveur local pour servir le contenu de votre répertoire statique (`dist/` par défaut) créé en exécutant `astro build`.

Cette commande vous permet de prévisualiser votre site localement [après la compilation](#astro-build) afin de détecter d'éventuelles erreurs dans le résultat de la compilation avant de le déployer. Elle n'est pas conçue pour être exécutée en production. Pour obtenir de l'aide sur l'hébergement en production, consultez notre guide sur le [déploiement d'un site Astro](/fr/guides/deploy/).

Les raccourcis clavier suivants peuvent être utilisés dans le terminal où le serveur de prévisualisation d'Astro est exécuté :
- `o` + `enter` pour ouvrir votre site Astro dans le navigateur.
- `q` + `enter` pour quitter le serveur de prévisualisation.

La commande `astro preview` peut être combinée avec les [options communes](#options-courantes) documentées ci-dessous pour contrôler davantage l'expérience de prévisualisation.

## `astro check`

Exécute des diagnostics (comme la vérification de type dans les fichiers `.astro`) sur votre projet et signale les erreurs à la console. Si des erreurs sont trouvées, le processus se terminera avec un code de **1**.

Cette commande est destinée à être utilisée dans un processus d'intégration continue.

<h3>Options</h3>

Utilisez ces options pour personnaliser le comportement d'une commande.

#### `--watch`

La commande surveillera toute modification apportée aux fichiers `.astro` et signalera toute erreur.

#### `--root <chemin-du-dossier>`

Spécifie un autre répertoire racine à vérifier. Par défaut, le répertoire de travail actuel est utilisé.

#### `--tsconfig <chemin-du-fichier>`

Spécifie un fichier `tsconfig.json` à utiliser manuellement. S'il n'est pas fourni, Astro essaiera de trouver une configuration, ou déduira automatiquement la configuration du projet.

#### `--minimumFailingSeverity <error|warning|hint>`

Spécifie la gravité minimale nécessaire pour sortir avec un code d'erreur. La valeur par défaut est `error`.

Par exemple, l'exécution de `astro check --minimumFailingSeverity warning` entraînera la sortie de la commande avec une erreur si des avertissements sont détectés.

#### `--minimumSeverity <error|warning|hint>`

Spécifie la gravité minimale à afficher. La valeur par défaut est `hint`.

Par exemple, l'exécution de `astro check --minimumSeverity warning` montrera les erreurs et les avertissements, mais pas les indices.

#### `--preserveWatchOutput`

Spécifie qu'il ne faut pas effacer la sortie entre les contrôles lorsqu'on est en mode de surveillance.

#### `--noSync`

Spécifie de ne pas exécuter `astro sync` avant de vérifier le projet.

<ReadMore>En savoir plus sur la [vérification des types dans Astro](/fr/guides/typescript/#vérification-des-types).</ReadMore>

## `astro sync`

<p><Since v="2.0.0" /></p>

:::tip
Exécuter `astro dev`, `astro build` ou `astro check` exécutera également la commande `sync`.
:::

Génère des types TypeScript pour tous les modules Astro. Cela configure un [fichier `.astro/types.d.ts`](/fr/guides/typescript/#configuration) pour l'inférence de type et définit des modules pour les fonctionnalités qui s'appuient sur des types générés :
- Le module `astro:content` pour l'[API des collections de contenus](/fr/guides/content-collections/).
- Le module `astro:db` pour [Astro DB](/fr/guides/astro-db/).
- Le module `astro:env` pour [Astro Env](/fr/guides/environment-variables/).
- Le module `astro:actions` pour [Astro Actions](/fr/guides/actions/)

## `astro add`

Ajoute une intégration à votre configuration. En savoir plus dans [le guide des intégrations](/fr/guides/integrations-guide/#configuration-automatique-des-intégrations).

## `astro docs`

Lance directement le site web Astro Docs depuis le terminal.

## `astro info`

Rapporte des informations utiles sur votre environnement Astro actuel. Utile pour fournir des informations lors du signalement d'un problème.

```shell
astro info
```

Exemple de sortie :

```
Astro                    v5.14.1
Vite                     v6.3.6
Node                     v22.17.1
System                   macOS (arm64)
Package Manager          npm
Output                   static
Adapter                  none
Integrations             @astrojs/starlight (v0.35.3)
```

<h3>Options</h3>

Utilisez les options suivantes pour personnaliser le comportement de la commande.

#### `--copy`

La commande copiera le résultat dans le presse-papiers sans demande de confirmation.

## `astro preferences`

Gérer les préférences des utilisateurs avec la commande `astro preferences`. Les préférences utilisateur sont spécifiques à chaque utilisateur d'Astro, contrairement au fichier `astro.config.mjs` qui modifie le comportement de toutes les personnes travaillant sur un projet.

Par défaut, les préférences de l'utilisateur sont limitées au projet en cours, et sont stockées dans un fichier local `.astro/settings.json`.

En utilisant l'option `--global`, les préférences utilisateur peuvent aussi être appliquées à tous les projets Astro sur la machine courante. Les préférences utilisateur globales sont stockées dans un emplacement spécifique au système d'exploitation.

<h3>Préférences disponibles</h3>

- `devToolbar` — Active ou désactive la barre d'outils de développement dans le navigateur. (Par défaut : `true`)
- `checkUpdates` — Active ou désactive les vérifications automatiques des mises à jour pour la CLI d'Astro. (Par défaut : `true`)

La commande `list` affiche les paramètres actuels de toutes les préférences configurables de l'utilisateur. Elle prend également en charge une sortie `--json` lisible par la machine.

```shell
astro preferences list
```

Exemple de sortie du terminal :

| Preference               | Value |
| ------------------------ | ----- |
| devToolbar.enabled       | true  <tr></tr>|
| checkUpdates.enabled     | true  |


Vous pouvez activer (`enable`), désactiver (`disable`) ou réinitialiser (`reset`) les préférences à leur valeur par défaut.

Par exemple, pour désactiver la devToolbar dans un projet Astro spécifique :

```shell
astro preferences disable devToolbar
```

Pour désactiver la devToolbar dans tous les projets Astro sur la machine actuelle :

```shell
astro preferences disable --global devToolbar
```

La devToolbar peut ensuite être activée avec :

```shell
astro preferences enable devToolbar
```

La commande `reset` réinitialise une préférence à sa valeur par défaut :

```shell
astro preferences reset devToolbar
```

## `astro telemetry`

Configure la télémétrie pour l'utilisateur actuel de la CLI. La télémétrie est une donnée anonyme qui fournit à l'équipe Astro des informations sur les fonctionnalités Astro les plus souvent utilisées. Pour en savoir plus, voir la [page télémetrie d'Astro](https://astro.build/telemetry/).

La télémétrie peut être désactivée avec cette commande CLI :

```shell
astro telemetry disable
```

La télémétrie peut être réactivée ultérieurement avec :

```shell
astro telemetry enable
```

La commande `reset` réinitialise les données de télémétrie :

```shell
astro telemetry reset
```

:::tip[Vous souhaitez désactiver la télémétrie dans les environnements IC ?]
Ajoutez la commande `astro telemetry disable` à vos scripts IC ou définissez la variable d'environnement `ASTRO_TELEMETRY_DISABLED`.
:::

## `astro create-key`

Génère une clé pour chiffrer les props transmises aux îlots de serveurs.

```shell
astro create-key
```

Définissez cette clé comme valeur pour la variable d'environnement `ASTRO_KEY` (par exemple dans un fichier `.env`) et incluez-la dans les paramètres de compilation de votre CI/CD ou de votre hôte lorsque vous avez besoin d'une [clé de chiffrement constante pour vos îlots de serveurs](/fr/guides/server-islands/#réutilisation-de-la-clé-de-chiffrement) pour des situations telles que les déploiements continus, l'hébergement multirégional ou un CDN qui met en cache les pages contenant des îlots de serveurs.

## Options courantes

### `--root <chemin>`

Spécifie le chemin de la racine du projet. Si aucun chemin n'est spécifié, le répertoire de travail actuel est considéré comme la racine.

La racine est utilisée pour trouver le fichier de configuration Astro.

```shell
astro --root monDossierRacine/monDossierProjet dev
```

### `--config <chemin>`

Spécifie le chemin du fichier de configuration par rapport à la racine du projet. Il est défini par défaut à `astro.config.mjs`. Utilisez cette option si vous utilisez un nom différent pour votre fichier de configuration ou si votre fichier de configuration est dans un autre dossier.

```shell
astro --config config/astro.config.mjs dev
```

### `--force <string>`

<p><Since v="5.0.0" /></p>

Vide le [cache de la couche de contenu](/fr/guides/content-collections/#définir-le-chargeur-de-collection-loader), forçant une nouvelle compilation complète.

### `--mode <string>`

<p><Since v="5.0.0" /></p>

Définit sur place la configuration de [`mode`](/fr/reference/programmatic-reference/#mode) pour votre projet.

### `--outDir <chemin>`

<p><Since v="3.3.0" /></p>

Configure le [`outDir`](/fr/reference/configuration-reference/#outdir) pour votre projet. Passer cette option remplacera la valeur de `outDir` dans votre fichier `astro.config.mjs`, s'il en existe un.

### `--site <url>`

Configure le [`site`](/fr/reference/configuration-reference/#site) pour votre projet. Utiliser cette option remplacera, si elle existe, la valeur `site` de votre fichier `astro.config.mjs`.

### `--base <chemin>`

<p><Since v="1.4.1" /></p>

Configure la [`base`](/fr/reference/configuration-reference/#base) de votre projet. Utiliser cette option remplacera, si elle existe, la valeur `base` de votre fichier `astro.config.mjs`.

### `--port <number>`

Spécifie le port sur lequel le serveur de développement et le serveur de prévisualisation doivent être exécutés. La valeur par défaut est `4321`.

### `--host [adresse d'hôte optionnelle]`

Définit les adresses IP du réseau sur lesquelles le serveur de développement et le serveur de prévisualisation doivent écouter (c.-à-d. les adresses IP non locales). Cela peut être utile pour tester votre projet sur des appareils locaux comme un téléphone portable pendant le développement.

- `--host` — écoute sur toutes les adresses, y compris les adresses LAN et publiques
- `--host <adresse-personnalisée>` - écoute sur une adresse IP du réseau à `<adresse-personnalisée>`.

:::caution
N'utilisez pas l'option `--host` pour exposer le serveur de développement et le serveur de prévisualisation dans un environnement de production. Ces serveurs sont conçus pour une utilisation locale lors du développement de votre site uniquement.
:::

### `--allowed-hosts`

<p><Since v="5.4.0" /></p>

Spécifie les noms d'hôtes auxquels Astro est autorisé à répondre en mode `dev` ou `preview`. Peut recevoir une liste de noms d'hôtes séparés par des virgules ou `true` pour autoriser n'importe quel nom d'hôte.

Reportez-vous à [la fonctionnalité `allowedHosts` de Vite](https://vite.dev/config/server-options.html#server-allowedhosts) pour plus d’informations, y compris les implications de sécurité de l’autorisation des noms d’hôtes.

### `--verbose`

Active les journaux verbeux, ce qui est utile pour déboguer un problème.

### `--silent`

Active les journaux silencieux, ce qui lance le serveur sans aucune sortie dans la console.

### `--open`

Ouvre automatiquement l'application dans le navigateur au démarrage du serveur. Une chaîne d'URL complète (par exemple `--open http://example.com`) ou un chemin d'accès (par exemple `--open /about`) peut être transmis pour spécifier l'URL à ouvrir.

## Options globales

Utilisez ces options pour obtenir des informations à propos de la CLI `astro`.

### `--version`

Affiche le numéro de version d'Astro et quitte.

### `--help`

Affiche le message d'aide et quitte.
